'use strict'
// eslint-disable-next-line @typescript-eslint/no-var-requires
const path = require('path')
const resolve = dir => path.join(__dirname, dir)

function chainWebpack(config) {
  // 在已有的svg loader配置中 排除掉对src/icons里svg进行转换
  config.module.rule('svg').exclude.add(resolve('src/icons')).end()
  // 配置svg-sprite-loader 指定src/icons要处理svg的文件目录
  config.module.rule('icons').test(/\.svg$/).include.add(resolve('src/icons')).end().use('svg-sprite-loader').loader('svg-sprite-loader').options({
    symbolId: 'icon-[name]'
  }).end()
}

module.exports = {
  chainWebpack,
  devServer: {
    port: 8080,
    open: true,
    overlay: {
      warnings: false,
      errors: true
    },
    proxy: {
      '/dev-api': {
        target: 'http://localhost:3003',
        ws: true,
        changeOrigin: true,
        pathRewrite: { '^/dev-api': '/api' }
      }
    }
  }
}
